iT邦幫忙

2022 iThome 鐵人賽

DAY 3
1

今天,我們嘗試像[Day 4] Hello World! 開啟我們自己的第一個網頁!一樣,做出一個 hello world 的畫面

首先,我們嘗試什麼都不寫,直接連線 http://127.0.0.1/hello-world ,我們沒有宣告路由的話,一樣會看到 404 的畫面

404

如果我們只宣告路由,但是沒有撰寫動作,會看到的錯誤畫面如下

error page main

這邊我們可以看到錯誤的理由:「Route for [hello-world] has no action.」

而且跟 Laravel 6 的錯誤畫面相比,我們可以看到更多的資訊

像是輸入的 request 內容

error page request

以及在 Laravel 內對應到的路由內容

error page routing

要寫出 hello-world 的路徑,我們可以像是 Laravel 6 時一樣,用一個匿名函數快速的建立路徑。

Route::get('/hello-world', function () {  
    return "hello-world";  
});

在 7.4 時,PHP 引入了 arrow function 的撰寫方式,所以我們可以將上面的寫法改寫成:

Route::get('/hello-world', fn() => "hello-world");

為了避免 設計難以維護的 route,我們可以將 route 命名

Route::get('/hello-world', fn() => "hello-world")
    ->name('hello');

設計畫面

如果要產生畫面的話,跟 Laravel 6 時一樣,我們可以寫一個 resources/views/hello_world.blade.php 檔案

<!DOCTYPE html>
<html>
    <head>
        <meta charset="utf-8">
        <title>Hello world!!!</title>
    </head>
    <body>
      Hello World!!!
    </body>
</html>

不過這邊,我們引入的方式更簡單一點,可以直接使用 view route 的宣告方式

Route::view('/hello-world', 'hello_world');

寫好之後,我們嘗試連線 http://127.0.0.1/hello-world 就可以看到畫面了!

這樣的寫法,語法比起原本已經相當簡單的語法,又再更簡潔了一點點。

今天我們針對畫面的練習就到這裡,我們明天見!


上一篇
Day 02:下載專案並運作網頁,從專案下載到環境建置
下一篇
Day 04:基本的測試教學!怎麼用 Laravel Sail 運作自動化測試
系列文
Laravel 9 漫遊,享受魔法般的極速網頁開發體驗30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言